Virtualizing a network function that exists on dedicated equipment removes the ability of the application owner to write code that reads information from the physical ports. In essence, those physical ports, including, without limitation, network cards, have memory and processors that contain state machines, and counters that track state information on the port itself. Once those physical ports become “virtual” ports on virtual machines, those same memory items are not readily available because those are typically hidden to provide the virtual machine (“VM”) platform flexibility in changing out Network cards without the application knowing about the changes.
This breaks the normal implementation model, requiring that we move to a new model whereby the Hypervisor (e.g., a host computer operating system) that is providing the application with a “virtual Network Interface Card (“NIC”)” be provided with abstracted virtual states for the same application management roles.
Hence, there is a need for more robust and scalable physical to virtual network transport function abstraction solutions.